/*
 * 文件名：PageUtils.java
 * 版权：MoonBox 
 * 修改人：Peter
 * 修改时间：2018年9月30日
 * 修改内容：新增
 */
package com.renzhebiao.lkang.utils;

import java.io.Serializable;
import java.util.List;

import com.baomidou.mybatisplus.plugins.Page;

import lombok.Data;

/**
 * 分页工具类
 * 
 * @author Peter
 * @since 1.0.0
 */
@Data
public class PageUtils implements Serializable {

    private static final long serialVersionUID = 1L;
    // 总记录数
    private int               totalCount;
    // 每页记录数
    private int               pageSize;
    // 总页数
    private int               totalPage;
    // 当前页数
    private int               currPage;
    // 列表数据
    private List<?>           list;

    /**
     * 分页
     * 
     * @param list 列表数据
     * @param totalCount 总记录数
     * @param pageSize 每页记录数
     * @param currPage 当前页数
     */
    public PageUtils(List<?> list, int totalCount, int pageSize, int currPage) {
        this.list = list;
        this.totalCount = totalCount;
        this.pageSize = pageSize;
        this.currPage = currPage;
        this.totalPage = (int) Math.ceil((double) totalCount / pageSize);
    }

    /**
     * 分页
     */
    public PageUtils(Page<?> page) {
        this.list = page.getRecords();
        this.totalCount = (int) page.getTotal();
        this.pageSize = page.getSize();
        this.currPage = page.getCurrent();
        this.totalPage = (int) page.getPages();
    }

}
